package com.bdqn;

import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import java.io.IOException;

/**
 * 获取元素节点中的文本值
 */
public class Demo02 {

    public static void main(String[] args) {
        // 得到DOM解析器的工厂实例
        DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
        try {
            // 从DOM工厂获得DOM解析器
            DocumentBuilder db = dbf.newDocumentBuilder();
            // 解析XML文档，得到一个Document对象，即DOM树
            Document doc = db.parse("ch02/src/main/resources/新的收藏信息.xml");

            // 得到所有 pubDate 元素节点列表信息
            NodeList pubDateList = doc.getElementsByTagName("pubDate");
            // 获取 pubDateList 列表中第一个节点
            Element pubDateElement = (Element) pubDateList.item(0);
            // 获得 pubDate 元素中第一个子节点的值
            String pubDate = pubDateElement.getFirstChild().getNodeValue();
            System.out.println(pubDate);
        } catch (ParserConfigurationException e) {
            e.printStackTrace();
        } catch (SAXException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
